package com.eastjet.maintenance.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 点检任务表
 * @TableName device_pmcs
 */
@TableName(value ="device_pmcs")
@Data
public class DevicePmcs implements Serializable {
    /**
     * 点检任务编号
     */
    @TableId(type = IdType.AUTO)
    private Integer pmcsId;

    /**
     * 点检任务名称
     */
    private String pmcsName;

    /**
     * 任务编码
     */
    private String taskCoding;

    /**
     * 巡检状态( device_inspectiontask_type表 1-未执行 2-执行中 3-已完成 4-逾期)
     */
    private String pmcsInspectiontasktypeId;

    /**
     * 点检计划编码
     */
    private String code;

    @TableField(exist = false)
    private String code1;
    @TableField(exist = false)
    private String code2;
    @TableField(exist = false)
    private String code3;

    /**
     * 任务计划序号
     */
    private Integer pmcsNumber;

    /**
     * 实际开始时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date pmcsOkontime;

    /**
     * 实际结束时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date pmcsOkuntime;

    /**
     * 点检用时
     */
    private String  pmcsTime;

    /**
     * 设备编号
     */
    private String pmcsEquipmentId;

    /**
     * 应检个数
     */
    private Integer pmcsInspection;

    /**
     * 未检个数
     */
    private Integer pmcsNd;

    /**
     * 异常个数
     */
    private Integer anomalousItems;

    /**
     * 调整原因
     */
    private String cause;

    /**
     * 创建人
     */
    private String insertPerson;

    /**
     * 创建时间
     */
    private Date insertTime;

    /**
     * 更新人
     */
    private String updatePerson;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 逻辑删除
     */
    private Integer isDelete;

    @TableField(exist = false)
    private Equipment equipment;

    @TableField(exist = false)
    private DeviceSpotcheck deviceSpotcheck;
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    @Override
    public String toString() {
        return "DevicePmcs{" +
                "pmcsId=" + pmcsId +
                ", pmcsName='" + pmcsName + '\'' +
                ", taskCoding='" + taskCoding + '\'' +
                ", pmcsInspectiontasktypeId='" + pmcsInspectiontasktypeId + '\'' +
                ", code='" + code + '\'' +
                ", pmcsNumber=" + pmcsNumber +
                ", pmcsOkontime=" + pmcsOkontime +
                ", pmcsOkuntime=" + pmcsOkuntime +
                ", pmcsTime='" + pmcsTime + '\'' +
                ", pmcsEquipmentId='" + pmcsEquipmentId + '\'' +
                ", pmcsInspection=" + pmcsInspection +
                ", pmcsNd=" + pmcsNd +
                ", anomalousItems=" + anomalousItems +
                ", cause='" + cause + '\'' +
                ", insertPerson='" + insertPerson + '\'' +
                ", insertTime=" + insertTime +
                ", updatePerson='" + updatePerson + '\'' +
                ", updateTime=" + updateTime +
                ", isDelete=" + isDelete +
                ", equipment=" + equipment +
                ", deviceSpotcheck=" + deviceSpotcheck +
                '}';
    }
}